const { transcribeAudio } = require('./convert');

// 设置控制台编码
process.stdout.setEncoding('utf8');
process.stderr.setEncoding('utf8');

async function quickTest() {
  console.log('🔧 测试 Whisper Medium 模型转录功能...');
  console.log('🚀 使用 Medium 模型 - 更高的转录质量');
  console.log('💾 预计显存占用: ~5GB (RTX 3080 完全支持)');
  console.log('⚡ 预期效果: 更准确的中文识别和标点符号');
  console.log('');
  
  const testFile = "D:\\AI\\AI_CODE\\27_wav_to_txt\\data\\1688857465691038\\精卫(7881301289929388)\\voice\\[00001]2025-07-24 15-36-06.wav";
  
  try {
    console.log('⏳ 开始转录测试...');
    console.log('💡 Medium 模型首次加载可能需要 3-5 秒');
    const startTime = Date.now();
    
    const result = await transcribeAudio(testFile);
    
    const endTime = Date.now();
    const duration = ((endTime - startTime) / 1000).toFixed(2);
    
    console.log('');
    console.log('✅ 转录成功！');
    console.log('📝 结果:', result);
    console.log('⏱️  耗时:', duration, '秒');
    
    // 性能评估
    if (parseFloat(duration) < 8) {
      console.log('🏆 性能评级: 优秀 (Medium 模型 + GPU 加速)');
    } else if (parseFloat(duration) < 15) {
      console.log('👍 性能评级: 良好');
    } else {
      console.log('⚠️  性能评级: 一般 (可能需要优化)');
    }
    
    console.log('');
    console.log('🎉 Medium 模型升级成功！');
    console.log('💡 相比 Small 模型的改进:');
    console.log('  - 更准确的中文识别');
    console.log('  - 更好的标点符号处理');
    console.log('  - 更少的识别错误');
    console.log('  - 更好的长句子处理');
    console.log('');
    console.log('🚀 运行 "node main.js" 开始高质量批量转录');
    
  } catch (error) {
    console.error('❌ 转录失败:', error.message);
    console.log('');
    
    if (error.message.includes('CUDA') || error.message.includes('memory')) {
      console.log('💡 显存问题解决建议:');
      console.log('1. 关闭其他占用显存的程序 (如游戏、视频软件)');
      console.log('2. 重启电脑释放显存');
      console.log('3. 如果问题持续，可以改回 small 模型');
    } else {
      console.log('💡 其他问题解决建议:');
      console.log('1. 重启命令行窗口');
      console.log('2. 检查音频文件是否存在');
      console.log('3. 确认 Python 环境正常');
    }
  }
}

quickTest();